Receiving apparatus, receiving method, and program

ABSTRACT

A reception apparatus is provided. The reception apparatus includes circuitry configured to receive a first trigger associated with a first application to be executed by the reception apparatus. The circuitry is configured to execute the first application associated with the first trigger. A target of the first trigger is the reception apparatus. Further, the circuitry is configured to send a second trigger associated with a second application to the external device. A target of the second trigger is the external device.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation of U.S. Ser. No. 14/857,251 filedSep. 17, 2015, which is a continuation of U.S. Ser. No. 13/238,065 filedSep. 21, 2011 now U.S. Pat. No. 9,179,198, which claims the benefit ofpriority of Provisional Application Ser. Nos. 61/388,999, filed Oct. 1,2010 and 61/497,344, filed Jun. 15, 2011, the entire contents of whichare incorporated herein by reference.

BACKGROUND

The present technology relates to a receiving apparatus, a receivingmethod, and a program. More particularly, the technology relates to areceiving apparatus, a receiving method, and a program for controllingthe performance of a predetermined application program in conjunctionwith the progress of AV content such as a TV program.

In digital TV broadcasting, not only the TV program broadcast servicebut also the so-called data broadcast service has been put into practice(e.g., see Japanese Patent Laid-Open No. 2006-50237). Studies are nowunder way to introduce more advanced services in the future into digitalTV broadcasting using the Internet.

For example, the advanced services to be introduced into digital TVbroadcasting using the Internet may include the service of feedingapplication programs or the like to receiving apparatus for controlthereof or for control of an external device connected thereto inconjunction with the progress of AV content such as a TV program.

SUMMARY

However, there has yet to be established a technology of controlling theperformance of an external device connected to the receiving apparatusin conjunction with the progress of a currently received AV content.

The present technology has been made in view of the above circumstancesand provides a receiving apparatus, a receiving method, and a programfor controlling the performance of an external device connected to thereceiving apparatus in conjunction with the progress of AV content.

According to one embodiment of the present technology, there is provideda receiving apparatus including: a reception portion configured toreceive AV content being transmitted; a trigger extraction portionconfigured to extract trigger information for controlling an applicationprogram for execution either by the receiving apparatus proper or by anexternal device connected thereto in conjunction with the AV content,the application program being transmitted along with the AV content; anapparatus proper control portion configured such that if a commandindicated by the extracted trigger information is destined for thereceiving apparatus proper, the apparatus proper control portioncontrols performance of the application program in accordance with thecommand; and an external device processing portion configured such thatif the command indicated by the extracted trigger information isdestined for the external device, the external device processing portiontransfers the command to the external device.

If the application program executed by the external device is the sameas the application program currently executed by the receiving apparatusproper, then the apparatus proper control portion may terminate theapplication program currently executed by the receiving apparatusproper.

If the application program executed by the external device is differentfrom the application program currently executed by the receivingapparatus proper, then the apparatus proper control portion may allowthe receiving apparatus proper to continue executing the currentlyexecuting application program.

The apparatus proper control portion may exercise control so that thereceiving apparatus proper does not execute the same program as theapplication program currently executed by the external device.

The command indicated by the trigger information may include informationfor designating a specific device or part of or all of the devices thatmay be targeted by the command.

The trigger information may include one of the commands to acquire,register, start, fire an event in, suspend, and terminate apredetermined application program.

In accordance with each of the commands, the apparatus proper controlportion may exercise control so as to acquire, register, or start theapplication program; or to fire an event in, suspend, or terminate thecurrently executing application program.

The external device processing portion may transfer to the externaldevice the command to acquire, register, or start the applicationprogram; or to fire an event in, suspend, or terminate the currentlyexecuting application program.

The receiving apparatus may be either an independent apparatus or aninternal block or blocks constituting a single apparatus.

According to other embodiments of the present technology, there areprovided a receiving method and a program functionally corresponding tothe above-outlined receiving apparatus.

Through the use of the receiving apparatus, receiving method, or programembodying the present technology as outlined above, transmitted AVcontent is first received. Then trigger information is extracted forcontrolling an application program for execution either by the receivingapparatus or by an external device connected thereto in conjunction withthe AV content, the application program being transmitted along with theAV content. If a command indicated by the extracted trigger informationis destined for the receiving apparatus proper, performance of theapplication program is controlled in accordance with the command. If thecommand indicated by the extracted trigger information is destined forthe external device, the command is transferred to the external device.

According to the present technology embodied as outlined above, it ispossible to operate the external device connected to the receivingapparatus in conjunction with the progress of AV content.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic view showing a typical configuration of abroadcasting system;

FIG. 2 is a schematic view showing a typical structure of a broadcastingapparatus;

FIG. 3 is a schematic view showing a typical structure of a receivingapparatus;

FIG. 4 is a schematic view showing a typical structure of a triggerprocessing portion;

FIG. 5 is a schematic view showing a typical structure of an externaldevice;

FIG. 6 is a tabular view listing the items included in the triggerinformation as a register command;

FIG. 7 is a tabular view listing the items included in the triggerinformation as an execute command;

FIG. 8 is a tabular view listing the items included in the triggerinformation as an inject event command;

FIG. 9 is a tabular view listing the items included in the triggerinformation as a suspend command;

FIG. 10 is a tabular view listing the items included in the triggerinformation as a terminate command;

FIG. 11 is a schematic view showing a typical syntax of the triggerinformation;

FIG. 12 is a state transition diagram of a data broadcast applicationprogram;

FIG. 13 is a schematic view showing relations between each of thecommands on the one hand and the state transitions of the data broadcastapplication program on the other hand;

FIG. 14 is a schematic view showing an operating scenario in effect whendifferent data broadcast application programs are acquired;

FIG. 15 is a schematic view showing an operating scenario in effect whenthe same data broadcast application program is acquired;

FIG. 16 is a schematic diagram showing a typical operating sequence ineffect when different data broadcast application programs are acquired;

FIG. 17 is a schematic diagram showing a typical operating sequence ineffect when the same data broadcast application program is acquired;

FIG. 18 is a flowchart explanatory of a trigger handling processperformed by the receiving apparatus;

FIG. 19 is a flowchart explanatory of a trigger handling processperformed by the external device;

FIG. 20 is a schematic view showing typical coordination between databroadcast application programs; and

FIG. 21 is a schematic view showing a typical structure of a computer.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Some preferred embodiments of the present technology will now bedescribed below in reference to the accompanying drawings.

[Configuration Example of the Broadcasting System]

FIG. 1 is a schematic view showing a typical configuration of abroadcasting system.

The broadcasting system 1 is made up of a broadcasting apparatus 21 anda server 22 on the broadcasting side and a receiving apparatus 23 and anexternal device 24 on the receiving side.

The broadcasting apparatus 21 is designed to transmit a digital TVbroadcast signal via a broadcasting network 2 such as a terrestrialdigital broadcasting network. The digital TV broadcast signal is used totransmit AV content such as TV programs, CMs, etc.

Also, the broadcasting apparatus 21 transmits, as part of the digital TVbroadcast signal, trigger information constituting a command forexecuting a data broadcast application program (called the databroadcast application or applications hereunder) in conjunction with AVcontent. Specifically, the trigger information is transmitted in amanner placed in transport streams (call the TS hereunder) fortransporting the digital TV broadcast signal or embedded in video andaudio signals.

In addition to information showing the command type, the triggerinformation includes information indicating where the data broadcastapplication is acquired from. The trigger information will be discussedlater in detail.

The server 22 feeds data broadcast applications to the receivingapparatus 23 or to the external device 24 in response to their requestfollowing their access to the server 22.

The receiving apparatus 23 receives the digital broadcast signal fromthe receiving apparatus 21 and outputs the video and audio of AV contentto a monitor (not shown). The receiving apparatus 23 also gains accessto the server 22 via the Internet 3, acquires data broadcastapplications from the server 22, and executes the acquired applications.

Furthermore, the receiving apparatus 23 is connected with the externaldevice 24 and controls performance of the data broadcast applicationexecuted by the external device 24.

Incidentally, the receiving apparatus 23 may be provided as anindependent apparatus or incorporated in TV set or in a video recorder,for example.

The external device 24 is connected to the receiving apparatus 23 and,under control of the receiving apparatus 23, gains access to the server22, acquires a data broadcast application from the server 22, andexecutes the acquired application.

Examples of the external device 24 include a smart phone, a personaldigital assistant, a digital TV set, and a video recorder.

The broadcasting system 1 is structured as explained above.

[Typical Structure of the Broadcasting Apparatus]

FIG. 2 is a schematic view showing a typical structure of a broadcastingapparatus.

The broadcasting apparatus 21 is made up of a trigger generation portion31, a video encoder 32, an audio encoder 33, a multiplexing portion 34,and an output portion 35.

The trigger generation portion 31 generates trigger information inkeeping with the progress of a video stream such as a TV program and CMsbeing input from an upstream stage, and outputs the generated triggerinformation to the video encoder 32 and multiplexing portion 34.

The video encoder 32 encodes an AV content video stream such as a TVprogram input from the upstream stage in accordance with a predeterminedcoding system, and supplies the encoded video stream thus obtained tothe multiplexing portion 34. Incidentally, typical coding systems foruse by the video encoder 32 include MPEG-2 (Moving Picture Experts Groupphase 2) and H.264.

Also, when encoding the video stream, the video encoder 32 embedstrigger information sent from the trigger generation portion 31 into thevideo stream and outputs the encoded video stream thus obtained to themultiplexing portion 34.

The audio encoder 33 encodes the audio stream corresponding to the videostream input to the video encoder 32 in accordance with a predeterminedcoding system, and supplies the encoded audio stream thus obtained tothe multiplexing portion 34. Typical coding systems for use by the audioencoder 33 include AC3 (Audio Code number 3) and AAC (Advanced AudioCoding).

The multiplexing portion 34 is supplied with the encoded video streamfrom the video encoder 32, encoded audio stream from the audio encoder33, and trigger information from the trigger generation portion 31.

The multiplexing portion 34 multiplexes the encoded video stream andencoded audio stream together with the trigger information, and suppliesthe multiplexed stream thus obtained to the output portion 35.Specifically, the streams may be multiplexed into TS for example.Alternatively, in consideration of digital TV broadcasts distributedover networks, the streams may be multiplexed into an ISO-based mediafile format (MP4).

The output portion 35 outputs the multiplexed stream fed from themultiplexing portion 34 as a digital TV broadcast signal.

The broadcasting apparatus 21 is structured as explained above.

In the foregoing explanation, the trigger information was shown to beembedded into the video stream and also multiplexed into the multiplexedstream. Alternatively, the trigger information may be either embedded inthe video stream or multiplexed into the multiplexed stream. As anotheralternative, the trigger information may be embedded in the audio streamor processed otherwise so as to be transmitted.

[Typical Structure of the Receiving Apparatus]

FIG. 3 is a schematic view showing a typical structure of a receivingapparatus.

The receiving apparatus 23 is made up of a tuner 61, a demultiplexerportion 62, an audio decoder 63, an audio output portion 64, a videodecoder 65, a video output portion 66, a trigger processing portion 67,an apparatus proper control portion 68, a memory 69, an operationportion 70, a communication interface 71, a cache memory 72, anapplication engine 73, an application memory 74, and an externalinterface 75.

The tuner 61 receives and demodulates a digital TV broadcast signalcorresponding to the service selected by a user (i.e., channel), andsupplies the multiplexed stream obtained through demodulation to thedemultiplexing portion 62.

The demultiplexing portion 62 demultiplexes encoded audio and videosignals from the multiplexed stream fed from the tuner 61, and suppliesthe encoded audio signal and encoded video signal to the audio decoder63 and video decoder 65, respectively.

The audio decoder 63 demodulates the encoded audio signal fed from thedemultiplexing portion 62, and supplies the audio signal obtainedthrough demodulation to the audio output portion 64.

The audio output portion 64 outputs the audio signal fed from the audiodecoder 63 to a downstream stage such as speakers.

The video decoder 65 demodulates the encoded video signal fed from thedemultiplexing portion 62, and supplies the video signal obtainedthrough demodulation to the audio output portion 66 and triggerprocessing portion 67.

The audio output portion 66 outputs the video signal fed from the videodecoder 65 to a downstream stage such as a display device. Also, thevideo output portion 66 combines the video signal fed from the videodecoder 65 with a data broadcast application video signal supplied fromthe application engine 73, and outputs the composite signal to thedownstream stage.

The trigger processing portion 67 continuously monitors the video signalfed from the video decoder 65, and extracts trigger information embeddedin the video signal. The trigger processing portion 67 analyzes theextracted trigger information, and sends the result of the analysis tothe apparatus proper control portion 68.

Based on the result of the analysis of the trigger information, thetrigger processing portion 67 also supplies the external interface 75with a command included in the trigger information and destined for anexternal device (i.e., external device 24), in order to controlperformance of the data broadcast application executed by the externaldevice 24. Furthermore, the trigger processing portion 67 recordsvarious kinds of information to the memory 69 or acquires informationstored in the memory 69 as needed.

The trigger processing portion 67 will be discussed later in moredetail.

The apparatus proper control portion 68 controls the components of thereceiving apparatus 23 in operation by carrying out control programsheld in the memory 69. The apparatus proper control portion 68 is alsosupplied with the result of the analysis of trigger information from thetrigger processing portion 67. In response to the command included inthe trigger information and destined for the receiving apparatus proper(i.e., receiving apparatus 23), the apparatus proper control portion 68controls acquisition, registration, or start of a data broadcastapplication; or firing of an event in, suspension of, or termination ofan executing data broadcast application.

The memory 69 records control programs and various kinds of information.The operation portion 70 accepts various operations performed by theuser, and supplies the apparatus proper control portion 68 withoperation signals corresponding to these operations.

Under control of the application engine 73, the communication interface71 connects to the server 22 via the Internet 3. Under control of theapparatus proper control portion 68, the application engine 73 acquiresa data broadcast application from the server 22 via the communicationinterface 71 and over the Internet 3, and retains the acquiredapplication in the cache memory 72.

Under control of the apparatus proper control portion 68, theapplication engine 73 reads the data broadcast application held in thecache memory 72 and executes the retrieved application. The video signalstemming from the currently executing data broadcast application is fedto the video output portion 66.

The application memory 74 is made up of a work memory 74A and a savememory 74B. The application engine 73 records to the work memory 74A thedata about the currently executing data broadcast application(specifically, data including layers of displayed information). Also,when suspending the currently executing data broadcast application, theapplication engine 73 moves the data held in the work memory 74A of theapplication memory 74 into the save memory 74B. And when resuming thesuspended data broadcast application, the application engine 73 movesthe data held in the save memory 74B into the work memory 74A so as torestore the state in effect before the suspension.

The external interface 75 establishes wireless or wired connection withthe external device 24, and sends to the external device 24 the commandfed from the trigger processing portion 67 and destined for the externaldevice. Also, the external interface 75 receives notification sent fromthe external device 24 to the receiving apparatus 23, and forwards thereceived notification to the trigger processing portion 67.

The receiving apparatus 23 is structured as explained above.

[Typical Detailed Structure of the Trigger Processing Portion]

FIG. 4 is a schematic view showing a typical detailed structure of thetrigger processing portion included in FIG. 3.

The trigger processing portion 67 is made up of a trigger extractionportion 81, a trigger analysis portion 82, and an external deviceprocessing portion 83.

The trigger extraction portion 81 continuously monitors the video signalfed from the video decoder 65, extracts trigger information embedded inthe video signal, and feeds the extracted information to the triggeranalysis portion 82.

The trigger analysis portion 82 analyzes the trigger information fedfrom the trigger extraction portion 81, and supplies the apparatusproper control portion 68 with the command included in the triggerinformation and destined for the receiving apparatus proper. Also, thetrigger analysis portion 82 feeds the external device processing portion83 with the command included in the trigger information and destined forthe external device.

The external device processing portion 83 sends to the externalinterface 75 the command fed from the trigger analysis portion 82 anddestined for the external device, in order to transfer the command tothe external device 24. Also, the external device processing portion 83performs various processes on the external device 24.

The trigger processing portion 67 is structured as explained above.

[Typical Structure of the External Device]

FIG. 5 is a schematic view showing a typical structure of an externaldevice.

The external device 24 is made up of an external interface 91, a commandanalysis portion 92, a control portion 93, an operation portion 94, amemory 95, an application engine 96, a communication interface 97, andan output portion 98.

The external interface 91 establishes wireless or wired connection withthe receiving apparatus 23, and receives the command sent from thereceiving apparatus 23 and destined for the external device. Theexternal interface 91 feeds the received command to the command analysisportion 92.

The command analysis portion 92 analyzes the command fed from theexternal interface 91 and destined for the external device, and suppliesthe result of the analysis to the control portion 93.

The control portion 93 controls the components of the external device 24in operation by carrying out control programs held in the memory 95.Also, in response to the command fed from the command analysis portion92 and destined for the external device, the control portion 93 controlsacquisition, registration, or start of a data broadcast application; orfiring of an event in, suspension of, or termination of an executingdata broadcast application.

The operation portion 94 accepts various operations performed by theuser, and supplies the control portion 93 with operation signalscorresponding to these operations.

Under control of the control portion 93, the application engine 96acquires a data broadcast application from the server 22 via thecommunication interface 97 and over the Internet 3, and executes theacquired application. The application engine 96 supplies the outputportion 98 with the video and audio signals of the data broadcastapplication which result from the currently executing application andwhich are related to the AV content being received by the receivingapparatus 23.

Under control of the application engine 96, the communication interface97 connects to the server 22 via the Internet 3 and acquires the databroadcast application from the server 22.

The output portion 98 displays images corresponding to the video signalfed from the application engine 96, and outputs sounds corresponding tothe audio signal from the application engine 96.

The external device 24 is structured as explained above.

[Details of Trigger Information]

Trigger information will now be discussed in detail. The triggerinformation is information for controlling data broadcast applications.The trigger information may include a register command, an executecommand, an inject event command, a suspend command, and a terminatecommand, for example.

FIG. 6 is a tabular view listing the items included in the triggerinformation as the register command. The register command is a commandthat instructs the receiving apparatus 23 to acquire and register a databroadcast application.

“Trigger_id” is information for identifying this trigger information. Ifthe trigger information of the same content is transmitted a number oftimes, each trigger information has the same “Trigger_id.”

“Target_device_type” is information for indicating the device typetargeted by the command. If “0xFF” is designated, then the command iscommon to all device types. For example, in “Target_device_type,” aspecific device such as the receiving apparatus proper or the externaldevice, or some or all devices may be designated as the target device ordevices (i.e., destinations) for the command.

“Protocol_version” indicates the protocol version of this triggerinformation. “Command_code” indicates the command type of this triggerinformation. In the case of FIG. 6, the information indicating theregister command is described.

“Trigger_validity” is a server access dispersion parameter indicatingthe probability that each receiving apparatus 23 having received thistrigger information will perform its processing in accordance with thetrigger information.

“App_id” is identification information about the data broadcastapplication acquired corresponding to this trigger information. Also,“App_id” indicates the URL of the location (server 22 in this case) fromwhich the data broadcast application is acquired corresponding to thistrigger information.

“App_type” is information indicating the data broadcast application type(e.g., HTML5, java) corresponding to this trigger information.“App_life_span” is information indicating the scope of the performanceof the data broadcast application.

“Persistent_priority” indicates the priority in effect when thecorresponding data broadcast application is acquired and retained.“Expire_date” is information indicating the expiration date of the databroadcast application. When the data broadcast application isregistered, the priority (“Persistent_priority”) and expiration date(“Expire_date”) thereof are stored. The data broadcast application ismanaged in accordance with the priority and expiration date thus stored.

FIG. 7 is a tabular view listing the items included in the triggerinformation as the execute command. The execute command is a commandthat instructs the receiving apparatus 23 to execute the data broadcastapplication.

“Trigger_id,” “Target_device_type,” “Protocol_version,” “Command_code,”“Trigger_validity,” “App_id,” “App_type,” and “Expire_date” are the sameas the corresponding items included in the trigger information shown inFIG. 6 as the register command. It should be noted that “Command_code”describes information indicating the execute command. “TDO_life_scope”is information indicating the scope of the performance of the databroadcast application.

FIG. 8 is a tabular view listing the items included in the triggerinformation as the inject event (“Inject_event”) command. The injectevent command is a command that fires an event into the currentlyexecuting data broadcast application.

“Trigger_id,” “Target_device_type,” “Protocol_version,” “Command_code,”“Trigger_validity,” “App_id,” and “App_type” are the same as thecorresponding items included in the trigger information shown in FIG. 6as the register command. It should be noted that “Command_code”describes information indicating the inject event command.

“Event_id” is identification information about the event to be firedinto the data broadcast application designated by “App_id.” “EventEmbedded Data” describes the data to be referenced when the event isfired.

FIG. 9 is a tabular view listing the items included in the triggerinformation as the suspend command. The suspend command is a commandthat instructs the receiving apparatus 23 to suspend the currentlyexecuting data broadcast application.

“Trigger_id,” “Target_device_type,” “Protocol_version,” “Command_code,”“Trigger_validity,” and “App_id” are the same as the corresponding itemsincluded in the trigger information shown in FIG. 6 as the registercommand. It should be noted that “Command_code” describes informationindicating the suspend command.

FIG. 10 is a tabular view listing the items included in the triggerinformation as the terminate command. The terminate command is a commandthat instructs the receiving apparatus 23 to terminate the currentlyexecuting data broadcast application.

“Trigger_id,” “Target_device_type,” “Protocol_version,” “Command_code,”“Trigger_validity,” and “App_id” are the same as the corresponding itemsincluded in the trigger information shown in FIG. 6 as the registercommand. It should be noted that “Command_code” describes informationindicating the terminate command.

FIG. 11 is a schematic view showing a typical trigger information syntaxapplicable to the trigger information constituting each of the commandsexplained above. Any other suitable trigger information syntax may beadopted, and the example in FIG. 11 is not limitative of the presenttechnology.

[State Transitions of the Data Broadcast Application]

FIG. 12 is a state transition diagram of a data broadcast applicationoperating in keeping with the trigger information constituting theregister command, execute command, inject event command, suspendcommand, and terminate command.

As shown in FIG. 12, the data broadcast application may be defined asbeing in one of four states: released state, ready state, active state,and suspended state.

The released state refers to a state in which the data broadcastapplication has yet to be acquired by the receiving apparatus 23. Theready state refers to a state in which the data broadcast application inquestion has been registered by the receiving apparatus 23 but has yetto be executed thereby. The active state refers to a state in which thedata broadcast application has been started and is currently executing.The suspended state is a state in which execution of the data broadcastapplication is suspended and information indicating the status in effectupon suspension is retained in the save memory 74B.

FIG. 13 is a schematic view showing relations between each of thecommands on the one hand and the state transitions of the data broadcastapplication on the other hand.

When the data broadcast application is in the released state (i.e., whenthe application has yet to be acquired by the receiving apparatus 23),the application may be acquired and retained in response to the triggerinformation constituting the register command. When the data broadcastapplication has been acquired, retained and registered, the applicationmakes transition to the ready state.

When the data broadcast application is in the ready state, theapplication may be executed in response to the trigger informationconstituting the execute command. Once executed, the data broadcastapplication makes transition to the active state.

When the data broadcast application is in the released state (i.e., whenthe application has yet to be acquired by the receiving apparatus 23),the application may be acquired, registered and executed in response tothe trigger information constituting the execute command. Once executed,the data broadcast application makes transition to the active state.Also, when the data broadcast application is in the active state, thecurrently executing application may perform diverse processes inresponse to the trigger information constituting the inject eventcommand, the processes including firing an event and reading updateddata to be reflected on the display.

When the data broadcast application is in the active state, thecurrently executing application may be suspended to make transition tothe suspended state in response to the trigger information constitutingthe suspend command. When the data broadcast application is in thesuspended state, the application may make transition to the ready statein response to the trigger information constituting the terminatecommand.

When the data broadcast application is in the suspended state, thesuspended application may be resumed to make transition to the activestate in response to the trigger information constituting the executecommand. Also, when the data broadcast application is in the activestate, the currently executing application may be terminated to maketransition to the ready state in response to the trigger informationconstituting the terminate command.

When the data broadcast application is in the ready state, active stateor suspended state, the expiration date of the application in questionmay expire. In that case, the data broadcast application is deleted fromthe cache memory 72, has its registration cancelled, and makestransition to the released state.

[Operating Scenarios]

Using the above-described trigger information makes it possible tooperate the data broadcast application as shown in FIGS. 14 and 15 forexample.

FIG. 14 is a schematic view showing an operating scenario in effect whendifferent data broadcast application programs are acquired by differentapparatuses.

In keeping with the progress of a TV program (i.e., AV content), thebroadcasting apparatus 21 may transmit to the receiving apparatus properthe trigger information constituting the register command for acquiringand registering the data broadcast application corresponding to the TVprogram in question. Upon receipt of the trigger information, thereceiving apparatus 23 acquires and registers the corresponding databroadcast application.

In keeping with the progress of the TV program, the broadcastingapparatus 21 may then transmit to the receiving apparatus proper thetrigger information constituting the execute command for executing thedata broadcast application corresponding to the TV program. Upon receiptof the trigger information, the receiving apparatus 23 executes thecorresponding data broadcast application. When executed, the databroadcast application is displayed in overlapping fashion over theimages of the TV program.

In keeping with the progress of the TV program, the broadcastingapparatus 21 may then transmit to the receiving apparatus proper thetrigger information constituting another execute command for executing adata broadcast application different from the data broadcast applicationcurrently executed by the receiving apparatus 23. Upon receipt of thetrigger information, the receiving apparatus 23 transfers the executecommand to the external device 24.

On receiving the execute command transferred from the receivingapparatus 23, the external device 24 acquires and executes accordinglyanother data broadcast application different from the currentlyexecuting data broadcast application on the receiving apparatus 23.

Then in keeping with the progress of the TV program, the broadcastingapparatus 21 may transmit the trigger information constituting theinject event command to the receiving apparatus proper. Upon receipt ofthe trigger information, the receiving apparatus 23 performspredetermined processes such as injecting an event in the currentlyexecuting data broadcast application and reading updated data to bereflected on the display.

In a suitably timed manner, the broadcasting apparatus 21 may transmitto the receiving apparatus proper the trigger information constitutingthe suspend command for suspending the data broadcast application. Uponreceipt of the trigger information, the receiving apparatus 23 suspendsaccordingly the currently executing data broadcast application.Thereafter, the broadcasting apparatus 21 may transmit to the receivingapparatus proper the trigger information constituting the executecommand for executing the data broadcast application. On receiving thetrigger information, the receiving apparatus 23 resumes the suspendeddata broadcast application.

Then in keeping with the end of the TV program, the broadcastingapparatus 21 transmits to both the receiving apparatus proper and theexternal device the trigger information constituting the terminatecommand for terminating the currently executing data broadcastapplication. On receiving the trigger information, the receivingapparatus 23 terminates the currently executing data broadcastapplication. The receiving apparatus 23 further transfers the terminatecommand to the external device 24.

Upon receipt of the terminate command transferred from the receivingapparatus 23, the external device 24 terminates accordingly thecurrently executing data broadcast application.

Where different data broadcast applications are to be acquired bydifferent apparatuses, the data broadcast applications are executedindependently by the receiving apparatus 23 and by the external device24.

FIG. 15 is a schematic view showing an operating scenario in effect whenthe same data broadcast application program is acquired by differentapparatuses.

As in the case of FIG. 14, the receiving apparatus 23 may transmit tothe receiving apparatus proper the trigger information constituting theregister command and the execute command. The trigger information causesthe receiving apparatus 23 to acquire and register the data broadcastapplication before executing the application.

Then in keeping with the progress of the TV program, the broadcastingapparatus 21 may transmit toward the external device the triggerinformation constituting the execute command for executing the same databroadcast application as the application currently executed by thereceiving apparatus 23. Upon receipt of the trigger information, thereceiving apparatus 23 transfers the execute command to the externaldevice 24.

Upon receipt of the execute command transferred from the receivingapparatus 23, the external device 24 acquires and executes the same databroadcast application as the application currently executed by thereceiving apparatus 23. When the external device 24 executes the databroadcast application, the receiving apparatus 23 terminates thecurrently executing data broadcast application.

Then in keeping with the progress of the TV program, the broadcastingapparatus 21 may transmit the trigger information constituting theinject event command to all apparatuses. Upon receipt of the triggerinformation, the receiving apparatus 23 ignores the inject event commandbecause the data broadcast application has been terminated. Also, thereceiving apparatus 23 transfers the inject event command to theexternal device 24.

On receiving the inject event command transferred from the receivingapparatus 23, the external device 24 performs predetermined processessuch as firing an event in the currently executing data broadcastapplication and reading updated data to be reflected on the display.

In a suitably timed manner, the broadcasting apparatus 21 may thentransmit to the receiving apparatus proper the trigger informationconstituting the suspend command or the execute command for suspendingor executing the data broadcast application. Upon receipt of the triggerinformation, the receiving apparatus 23 ignores these commands becausethe data broadcast application has been terminated.

Then in keeping with the end of the TV program, the broadcastingapparatus 21 transmits to all apparatuses the trigger informationconstituting the terminate command for terminating the currentlyexecuting data broadcast application. Upon receipt of the triggerinformation, the receiving apparatus 23 ignores the command because thedata broadcast application has been terminated. Also, the receivingapparatus 23 transfers the terminate command to the external device 24.

On receiving the terminate command transferred from the receivingapparatus 23, the external device 24 terminates the currently executingdata broadcast application.

Where the same data broadcast application is to be acquired by allapparatuses, the data broadcast application in question is executed onlyby either the receiving apparatus 23 or the external device 24.

[Operating Sequences]

Explained below in reference to FIGS. 16 and 17 are the operations ofthe apparatuses making up the broadcasting system 1 where theabove-described operating scenarios are carried out.

FIG. 16 is a schematic diagram showing a typical operating sequence ineffect when different data broadcast application programs are acquiredby different apparatuses.

While receiving AV content such as a TV program transmitted from thebroadcasting apparatus 21, the receiving apparatus 23 may receive thetrigger information constituting the execute command destined for thereceiving apparatus proper. In that case, the receiving apparatus 23requests the data broadcast application from the server 22 via theInternet 3. The receiving apparatus 23 acquires and executes the databroadcast application transmitted upon request from the server 22.

If the program data of the data broadcast application identified by theapplication ID (“App_id”) has yet to be acquired (i.e., if theapplication is not in the cache memory 72) when the execute command isreceived, then the receiving apparatus 23 acquires and executes theprogram data.

Thereafter, the broadcasting apparatus 21 transmits the triggerinformation constituting the execute command to the external device. Atthis point, the external device 24 is not connected to the receivingapparatus 23. For this reason, the receiving apparatus 23 havingreceived the execute command ignores the command.

Later, when the external device 24 is connected to the receivingapparatus 23 and sends a connection request thereto, a terminalauthentication process is performed between the external device 24 andthe receiving apparatus 23. Once the external device 24 is authenticatedas a legitimate terminal through the terminal authentication process, itbecomes possible for the commands destined for the external device fromthe broadcasting apparatus 21 to be transferred to the external device24.

That is, if the broadcasting apparatus 21 again transmits the triggerinformation constituting the execute command destined for the externaldevice, the receiving apparatus 23 notifies the external device 24 thatthe execute command destined for the external device has been received,and queries whether the external device 24 requests acquisition of theexecute command. If the external device 24 requests acquisition of theexecute command, the receiving apparatus 23 transfers the command to theexternal device 24.

Upon receipt of the execute command from the receiving apparatus 23, theexternal device 24 requests from the server 22 over the Internet 3 adata broadcast application different from the data broadcast applicationcurrently executed by the receiving apparatus 23. The external device 24acquires and executes the data broadcast application transmitted uponrequest from the server 22. Also, the external device 24 notifies thereceiving apparatus 23 that execution of the different data broadcastapplication has been started.

That is, the receiving apparatus 23 and the external device 24 execute adifferent data broadcast application each.

Thereafter, when the broadcasting apparatus 21 transmits the triggerinformation constituting the terminate command to the receivingapparatus proper, the receiving apparatus 23 terminates the currentlyexecuting data broadcast application. Also, when the broadcastingapparatus 21 transmits the trigger information constituting theterminate command destined for the external device 24, the receivingapparatus 23 queries whether the external device 24 requests acquisitionof the command. If the external device 24 request acquisition of theterminate command, the receiving apparatus 23 transfers the command tothe external device 24.

On receiving the terminate command transferred from the receivingapparatus 23, the external device 24 terminates the currently executingdata broadcast application. Also, the external device 24 notifies thereceiving apparatus 23 that execution of the data broadcast applicationhas been terminated.

The foregoing description completes the explanation of the operatingsequences in effect when different data broadcast applications areacquired by different apparatuses.

FIG. 17 is a schematic diagram showing a typical operating sequence ineffect when the same data broadcast application program is acquired byall apparatuses.

The operating sequence shown in FIG. 17 is the same as that in FIG. 16up to the point where the terminal authentication process is performedfollowing the connection of the receiving apparatus 23 with the externaldevice 24. The explanation of the operating sequence up to that point isthus omitted.

If the broadcasting apparatus 21 transmits the trigger informationconstituting the execute command destined for the external device afterthe external device 24 has been authenticated as a legitimate terminalthrough the terminal authentication process, the external device 24 mayrequest acquisition of the execute command from the receiving apparatus23. In that case, the receiving apparatus 23 transfers the executecommand to the external device 24.

Upon receipt of the execute command from the receiving apparatus 23, theexternal device 24 requests from the server 22 over the Internet 3 thesame data broadcast application as the application currently executed bythe receiving apparatus 23. The external device 24 acquires and executesthe data broadcast application transmitted upon request from the server22. Also, the external device 24 notifies the receiving apparatus 23that execution of the same data broadcast application has been started.

Based on the notification from the external device 24, the receivingapparatus 23 terminates the currently executing data broadcastapplication.

That is, the receiving apparatus 23 and the external device 24 will notexecute the same data broadcast application at the same time. When theexternal device 24 starts executing the same data broadcast application,the receiving apparatus 23 terminates execution of the same application.

Later, when the broadcasting apparatus 21 transmits the triggerinformation constituting the terminate command to all apparatuses, thereceiving apparatus 23 having received the trigger information ignoresthe command because the data broadcast application has already beenterminated. Also, when the external device 24 requests acquisition ofthe terminate command from the receiving apparatus 23, the receivingapparatus 23 transfers the terminate command to the external device 24.

On receiving the terminate command transferred from the receivingapparatus 23, the external device 24 terminates the currently executingdata broadcast application. Also, the external device 24 notifies thereceiving apparatus 23 that execution of the data broadcast applicationhas been terminated.

The foregoing description completes the explanation of the operatingsequence of each apparatus when all apparatuses acquire the same databroadcast application.

Alternatively, in the operating sequences shown in FIGS. 16 and 17, thereceiving apparatus 23 may forcibly transfer commands to the externaldevice 24 without querying whether the external device 24 requestsacquisition of the command of interest.

[Trigger Handling Process of the Receiving Apparatus]

Explained below in reference to the flowchart of FIG. 18 is the triggerhandling process performed by the receiving apparatus 23.

The trigger handling process of FIG. 18 may be carried out, for example,by the receiving apparatus 23 receiving AV content from the broadcastingapparatus 21 and getting content images displayed on a display device.

In step S101, the external device processing portion 83 controls theexternal interface 75 to determine whether the external device 24 hasrequested connection.

If in step S101 it is determined that the external device 24 isconnected to the receiving apparatus 23 and that the external device 24has requested connection with the receiving apparatus 23, control ispassed on to step S102. In step S102, the external device processingportion 83 performs a connection process with the external device 24 bycommunicating therewith via the external interface 75. For example, theconnection process may involve performing the terminal authenticationprocess with the connected external device 24.

In step S103, the external device processing portion 83 acquires adevice ID and a device type from the external device 24 authenticated asa legitimate terminal through the terminal authentication process forexample, and records external device information associating the deviceID with the device type to the memory 69. Incidentally, the device ID isan identifier that identifies the connected device, and the device typeis information that indicates the type of the device in question.

If in step S101 it is determined that the external device 24 does notrequest connection, then steps S102 and S103 are skipped, and control ispassed on to step S104.

In step S104, the trigger extraction portion 81 attempts to extracttrigger information as part of the AV content transmitted from thebroadcasting apparatus 21, and determines whether the triggerinformation has been extracted.

If in step S104 it is determined that the trigger information is notextracted, control is passed on to step S105. In step S105, the externaldevice processing portion 83 controls the external interface 75 todetermine whether the connected external device 24 has notified thatexecution of the data broadcast application has been started.

If in step S105 it is determined that the application execution startnotification is not given, control is passed on to step S109. In stepS109, the external device processing portion 83 controls the externalinterface 75 to determine whether the connected external device 24 hasnotified that execution of the data broadcast application has beenterminated.

If in step S109 the application execution termination notification isnot given, then control is returned to step S101, and the subsequentsteps are repeated. Later, if it is determined in step S104 that thetrigger information has been extracted, control is passed on to stepS111.

In step S111, the trigger analysis portion 82 determines whether thedevice type targeted by the command included in the received triggerinformation points to the receiving apparatus proper, the connectedexternal device, or some other device.

The device type is determined by the “Target_device_type” included ineach of the above-described commands. Whether or not the device inquestion is the connected external device may be determined, forexample, by checking to see if the device type which is part of theexternal device information stored into the memory 69 in step S103 andwhich applies to the connected external device 24 matches the targetdevice type. Thus some other device means any device other than thereceiving apparatus 23 or the external device 24.

If in step S111 the device type points to some other device, control isreturned to step S101 and the subsequent steps are repeated. Forexample, if any command destined for a disconnected external device orfor some other device is received, the receiving apparatus 23 ignoresthe received command.

If in step S111 it is determined that the device type points to thereceiving apparatus proper, control is passed on to step S112. In stepS112, the trigger analysis portion 82 analyzes the command included inthe received trigger information.

In step S113, the trigger analysis portion 82 determines whether theapplication ID (“App_id”) of the analyzed command is targeted to beblocked (i.e., whether this data broadcast application is blocked fromexecution by the receiving apparatus 23). If it is determined in stepS113 that the application ID is targeted to be blocked, the command isnot executed. Control is then returned to step S101, and the subsequentsteps are repeated.

If it is determined in step S113 that the application ID is not targetedto be blocked, control is passed on to step S114. In step S114, thetrigger analysis portion 82 determines whether the command included inthe trigger information is the execute command based on the result ofthe analysis in step S112.

If it is determined in step S114 that the command is the executecommand, control is passed on to step S116. In step S116, by referencingthe external device information stored in the memory 69, the triggeranalysis portion 82 determines whether the trigger ID (“Trigger_id”) ofthe execute command matches the trigger ID of the trigger informationdestined for the external device being connected.

If it is determined that the trigger ID of the execute command isdifferent from the trigger ID of the trigger information destined forthe external device, control is passed on to step S118. For example, ifthe trigger information destined for the connected external device hasyet to be received, it is determined that the two trigger IDs aredifferent.

In step S118, under control of the apparatus proper control portion 68,the application engine 73 starts executing the application.Specifically, the application engine 73 controls the communicationinterface 71 to acquire from the server 22 over the Internet 3 the dataof the data broadcast application identified by the application ID(“App_id”) of the trigger information, and starts to execute theacquired data broadcast application.

In step S119, the apparatus proper control portion 68 records to thememory 69 the trigger ID of the currently executing data broadcastapplication. Thereafter, control is returned to step S101 and thesubsequent steps are repeated.

If a command other than the execute command is transmitted from thebroadcasting apparatus 21 as a command destined for the receivingapparatus proper, that command is determined to be a command other thanthe execute command in step S114, and control is passed on to step S115.In step S115, under control of the apparatus proper control portion 68,the application engine 73 performs the process corresponding to thecommand. For example, if the trigger information constituting thesuspend command is received, the currently executing data broadcastapplication is suspended.

If in step S111 the device type points to the external device beingconnected, control is passed on to step S120. In step S120, the externaldevice processing portion 83 controls the external interface 75 totransfer to the external device 24 the command included in the receivedtrigger information and destined for the external device. In turn, theexternal device 24 acquires and executes the data broadcast applicationcorresponding to the command.

Although not described above for purpose of simplification, the externaldevice 24 may be queried whether or not to acquire the command beforethe command is transmitted thereto, as explained earlier.

In step S121, the trigger analysis portion 82 determines whether thecommand transferred to the external device 24 is the execute command. Ifit is determined in step S121 that the transferred command is theexecute command, control is passed on to step S122.

In step S122, the trigger analysis portion 82 records to the memory 69the trigger ID of the trigger information constituting the executecommand in association with the device ID of the connected externaldevice 24. Since the external device information having the device IDassociated with the device type was recorded to the memory 69 in stepS103, the device ID included in the external device information isfurther associated with the trigger ID in step S122.

That is, upon transfer of the execute command, the trigger ID of thetrigger information constituting the command is recorded in associationwith the device ID of the destination of the transfer. Thereafter, ifthe execute command destined for the receiving apparatus proper isreceived and if the trigger ID of the trigger information constitutingthe received execute command matches the trigger ID of the triggerinformation making up the execute command transferred to the externaldevice 24 as the destination of the transfer (“YES” in step S116), thenthe application ID in question may be targeted to be blocked (in stepS117). This prevents the receiving apparatus 23 from executing the databroadcast application targeted to be blocked and currently executed bythe external device 24.

Upon completion of step S117 or S122, control is returned to step S101and the subsequent steps are repeated.

Having started to execute the data broadcast application, the externaldevice 24 notifies the receiving apparatus 23 of the start ofapplication execution. In step S105, it is determined that theapplication execution start notification has been given. Control is thenpassed on to step S106.

In step S106, the trigger analysis portion 82 determines whether thetrigger ID of the data broadcast application currently executed by theexternal device 24 having given the application execution startnotification matches the trigger ID of the data broadcast applicationcurrently executed by the receiving apparatus 23.

If in step S106 it is determined that the trigger IDs match, thencontrol is passed on to step S107. In step S107, the application engine73 under control of the apparatus proper control portion 68 terminatesthe currently executing data broadcast application.

In step S108, the trigger analysis portion 82 gets the application IDcorresponding to the data broadcast application currently executed bythe external device 24 (i.e., data broadcast application whose executionwas terminated by the receiving apparatus 23) targeted to be blocked, sothat the receiving apparatus 23 will not execute the data broadcastapplication currently executed by the external device 24.

That is, if the receiving apparatus 23 and external device 24 haveacquired the same data broadcast application, then the receivingapparatus 23 is caused to terminate the currently executing databroadcast application and only the external device 24 is allowed toexecute its data broadcast application.

Upon completion of step S108, control is returned to step S101 and thesubsequent steps are repeated.

If in step S106 it is determined that the trigger IDs do not match,steps S107 and S108 are skipped. Control is then passed on to step S109.

That is, if the receiving apparatus 23 and external device 24 haveacquired different data broadcast applications, the receiving apparatus23 and external device 24 are allowed to execute their different databroadcast applications.

Later, upon terminating execution of the data broadcast application, theexternal device 24 notifies the receiving apparatus 23 of thetermination of application execution. In step S109, it is determinedthat the application execution termination notification has been given.Control is then passed on to step S110.

In step S110, the trigger analysis portion 82 deblocks the applicationID corresponding to the data broadcast application of which theexecution was terminated by the external device 24 having given theapplication execution termination notification, so that the receivingapparatus 23 can execute the data broadcast application whose executionwas terminated by the external device 24.

Upon completion of step S110, control is returned to step S101, and thesubsequent steps are repeated.

The foregoing description completes the explanation of the triggerinformation handling process performed by the receiving apparatus 23.

According to the above-described trigger information handling processperformed by the receiving apparatus 23, the receiving apparatus propercan execute, fire an event in, or terminate its data broadcastapplication in keeping with AV content such as a TV program. Also, theexternal device can execute, fire an event in, or terminate its databroadcast application in keeping with AV content such as the TV program.

[Trigger Handling Process of the External Device]

Explained below in reference to the flowchart of FIG. 19 is the triggerhandling process performed by the external device 24.

In step S151, the control portion 93 controls the external interface 91to determine whether the external device is connected to the receivingapparatus 23. If in step S151 it is determined that the external deviceis connected to the receiving apparatus 23, control is passed on to stepS152.

In step S152, the control portion 93 controls the external interface 91to give a connection request to the receiving apparatus 23. In stepS153, the control portion 93 communicates with the receiving apparatus23 via the external interface 91 in order to carry out a connectionprocess with the receiving apparatus 23. For example, the connectionprocess may involve having the terminal authentication process carriedout between the receiving apparatus 23 and the external device 24.

In step S154, the control portion 93 controls the external interface 91to determine whether any command transferred from the receivingapparatus 23 is received. If in step S154 it is determined that nocommand is received, then the determination process of step S154 isrepeated.

If in step S154 it is determined that a command has been received,control is passed on to step S155. In step S155, the command analysisportion 92 analyzes the command received from the receiving apparatus23.

In step S156, the command analysis portion 92 determines whether thereceived command is the execute command based on the result of theanalysis in step S155. If it is determined in step S156 that thereceived command is the execute command, control is passed on to stepS157.

In step S157, the application engine 96 starts executing the applicationunder control of the control portion 93. Specifically, the applicationengine 96 controls the communication interface 97 to acquire from theserver 22 over the Internet 3 the data of the data broadcast applicationidentified by the application ID (“App_id”), and starts to execute thedata broadcast application.

In step S158, the control portion 93 controls the external interface 91to notify the receiving apparatus 23 of the start of applicationexecution. Upon completion of step S158, control is returned to stepS154 and the subsequent steps are repeated.

If in step S156 it is determined that the received command is a commandother than the execute command, control is passed on to step S159. Instep S159, the command analysis portion 92 determines whether thereceived command is the terminate command based on the result of theanalysis in step S155.

If in step S159 it is determined that the received command is not theterminate command, i.e., that the received command is a command otherthan the execute command or terminate command, then control is passed onto step S160. In step S160, the application engine 96 performs theprocess corresponding to the received command under control of thecontrol portion 93. For example, if the trigger information constitutingthe suspend command is received, the currently executing data broadcastapplication is suspended. Upon completion of step S160, control isreturned to step S154 and the subsequent steps are repeated.

If in step S159 it is determined that the received command is theterminate command, control is passed on to step S161. In step S161, theapplication engine 96 terminates the currently executing data broadcastapplication under control of the control portion 93.

In step S162, the control portion 93 controls the external interface 91to notify the receiving apparatus 23 of the termination of applicationexecution. Upon completion of step S162, control is returned to stepS154 and the subsequent steps are repeated.

The foregoing description completes the explanation of the triggerinformation handling process performed by the external device 24.

According to the above-described trigger information handling process ofthe external device 24, the external device can execute, fire an eventin, or terminate its data broadcast application in keeping with AVcontent such as a TV program under control of the receiving apparatusproper.

FIG. 20 is a schematic view showing typical coordination between databroadcast applications performed by the receiving apparatus 23 andexternal device 24.

As shown in FIG. 20, a display device of the receiving apparatus 23displays an image of the TV content being received from the broadcastingapparatus 21. In the bottom left corner of the displayed image appearsan image of the data broadcast application in overlapping fashion. Ifthe external device 24 is connected to the receiving apparatus 23 and ifthe receiving apparatus has received a command for causing the externaldevice 24 to execute the data broadcast application currently executedby the receiving apparatus 23, that command is transferred to theexternal device 24.

Based on the command transferred from the receiving apparatus 23, theexternal device 24 acquires from the server 22 over the Internet 3 thesame data broadcast application as the application currently executed bythe receiving apparatus 23, and executes the acquired data broadcastapplication. This causes the screen of the external device 24 to displaythe same image as that of the data broadcast application displayed inthe bottom left corner on the display of the receiving apparatus 23.

Also, when the image of the data broadcast application is displayed onthe screen of the external device 24, the image of the data broadcastapplication displayed in overlapping fashion on the receiving apparatus23 disappears, leaving only the image of the AV content displayed.

The foregoing example was one in which the same data broadcastapplication is acquired by each apparatus. In another example, asexplained above, the receiving apparatus 23 and external device 24 mayacquire different data broadcast applications. In this case, thereceiving apparatus 23 and external device 24 execute a different databroadcast application each.

In the manner described above, the external device 24 connected to thereceiving apparatus 23 may be operated in conjunction with the progressof AV content.

[Typical Structure of the Computer]

The series of the processes described above may be executed either byhardware or by software. Where the processes are to be carried out bysoftware, the programs constituting the software may be eitherincorporated beforehand in the dedicated hardware of the computer to beused or installed from a suitable program recording medium into ageneral-purpose personal computer or like equipment capable of executingdiverse functions based on the installed programs.

FIG. 21 is a schematic view showing a typical structure of a computerfor executing the series of the above-described processes usingprograms.

In this computer 200, a CPU (central processing unit) 201, a ROM (readonly memory) 202, and a RAM (random access memory) 203 areinterconnected by a bus 204.

An input/output interface 205 is further connected to the bus 204. Theinput/output interface 205 is connected with an input device 206generally made up of a keyboard, a mouse, a microphone and the like; anoutput device 207 usually composed of a display unit, speakers and thelike; a storage device 208 formed by a hard disk or a nonvolatilememory, for example; a communication device 209 constituted by a networkinterface or the like; and a drive 210 for driving removable media suchas magnetic disks, optical disks, magneto-optical disks, orsemiconductor memories.

In the computer structured as outlined above, the CPU 201 may carry outthe series of the above-described processes by loading the programs fromthe storage device 208 into the RAM 203 for execution via theinput/output interface 205 and bus 204, for example.

Also, the programs for execution by the computer may be processed in thedepicted sequence of this specification (i.e., on a time series basis),in parallel, or in otherwise appropriately timed fashion such as whenthey are invoked.

The programs may be processed by a single computer or by a plurality ofcomputers on a distributed basis. The program may also be transferred toa remote computer or computers for execution.

In this specification, the term “system” refers to an entireconfiguration made up of a plurality of component devices.

It should be understood that the present technology when embodied is notlimited to the above-described embodiments and that variousmodifications, variations and alternatives may be made of the technologyso far as they are within the scope of the appended claims or theequivalents thereof.

Furthermore, the present technology can be structured as follows.

-   [1]

A receiving apparatus including:

a reception portion configured to receive AV content being transmitted;

a trigger extraction portion configured to extract trigger informationfor controlling an application program for execution either by thereceiving apparatus proper or by an external device connected thereto inconjunction with the AV content, the application program beingtransmitted along with the AV content;

an apparatus proper control portion configured such that if a commandindicated by the extracted trigger information is destined for thereceiving apparatus proper, the apparatus proper control portioncontrols performance of the application program in accordance with thecommand; and

an external device processing portion configured such that if thecommand indicated by the extracted trigger information is destined forthe external device, the external device processing portion transfersthe command to the external device.

-   [2]

The receiving apparatus according to paragraph [1] above, wherein, ifthe application program executed by the external device is the same asthe application program currently executed by the receiving apparatusproper, then the apparatus proper control portion terminates theapplication program currently executed by the receiving apparatusproper.

-   [3]

The receiving apparatus according to paragraph [1] or [2] above,wherein, if the application program executed by the external device isdifferent from the application program currently executed by thereceiving apparatus proper, then the apparatus proper control portionallows the receiving apparatus proper to continue executing thecurrently executing application program.

-   [4]

The receiving apparatus according to any one of paragraphs [1] through[3] above, wherein the apparatus proper control portion exercisescontrol so that the receiving apparatus proper does not execute the sameprogram as the application program currently executed by the externaldevice.

-   [5]

The receiving apparatus according to any one of paragraphs [1] through[4] above, wherein the command indicated by the trigger informationincludes information for designating a specific device or part of or allof the devices that may be targeted by the command.

-   [6]

The receiving apparatus according to any one of paragraphs [1] through[5] above, wherein the trigger information includes one of the commandsto acquire, register, start, fire an event in, suspend, and terminate apredetermined application program.

-   [7]

The receiving apparatus according to paragraph [6] above, wherein, inaccordance with each of the commands, the apparatus proper controlportion exercises control so as to acquire, register, or start theapplication program; or to fire an event in, suspend, or terminate thecurrently executing application program.

[8]

The receiving apparatus according to paragraph [6] or [7], wherein theexternal device processing portion transfers to the external device thecommand to acquire, register, or start the application program; or tofire an event in, suspend, or terminate the currently executingapplication program.

[9]

A receiving method for use with a receiving apparatus, the receivingmethod including:

causing the receiving apparatus to receive AV content being transmitted;

causing the receiving apparatus to extract trigger information forcontrolling an application program for execution either by the receivingapparatus proper or by an external device connected thereto inconjunction with the AV content, the application program beingtransmitted along with the AV content;

if a command indicated by the extracted trigger information is destinedfor the receiving apparatus proper, then causing the receiving apparatusto control performance of the application program in accordance with thecommand; and

if the command indicated by the extracted trigger information isdestined for the external device, then causing the receiving apparatusto transfer the command to the external device.

[10]

A program for causing a program to function as:

a reception portion configured to receive AV content being transmitted;

a trigger extraction portion configured to extract trigger informationfor controlling an application program for execution either by areceiving apparatus proper or by an external device connected thereto inconjunction with the AV content, the application program beingtransmitted along with the AV content;

an apparatus proper control portion configured such that if a commandindicated by the extracted trigger information is destined for thereceiving apparatus proper, the apparatus proper control portioncontrols performance of the application program in accordance with thecommand; and

an external device processing portion configured such that if thecommand indicated by the extracted trigger information is destined forthe external device, the external device processing portion transfersthe command to the external device.

1. (canceled)
 2. A reception apparatus comprising: circuitry to receivea first trigger associated with a first application to be executed bythe reception apparatus, execute the first application associated withthe first trigger, a target of the first trigger being the receptionapparatus, and send a second trigger associated with a secondapplication to an external device, a target of the second trigger beingthe external device.
 3. The reception apparatus according to claim 2,wherein the circuitry is configured to send the second trigger to theexternal device via a wireless interface;
 4. The reception apparatusaccording to claim 2, wherein the circuitry is configured to obtain thesecond trigger from a server.
 5. The reception apparatus according toclaim 2, wherein the first trigger includes validity data.
 6. Thereception apparatus according to claim 2, wherein the first triggerincludes an identification of the first application.
 7. The receptionapparatus according to claim 2, wherein the first trigger includes anindication of a source of first application data, the source being abroadband source or a broadcast source.
 8. The reception apparatusaccording to claim 2, wherein the first trigger includes a first commandthat identifies a command to acquire, register, start, fire an event in,suspend, or terminate the first application.
 9. The reception apparatusaccording to claim 2, wherein the circuitry is configured to transfer tothe external device a second command included in the second trigger toacquire, register, or start the second application; or to fire an eventin, suspend, or terminate the second application.
 10. The receptionapparatus according to claim 2, wherein the circuitry is configured toreceive a digital broadcast signal that includes audio/video contentassociated with the first and second applications, and output theaudio/video content for display to a user.
 11. A television setcomprising the reception apparatus according to claim
 2. 12. A method ofa reception apparatus for processing triggers, the method comprising:receiving a first trigger associated with a first application to beexecuted by the reception apparatus; executing, by circuitry of thereception apparatus, the first application associated with the firsttrigger, a target of the first trigger being the reception apparatus,and sending a second trigger associated with a second application to anexternal device, a target of the second trigger being the externaldevice.
 13. The method according to claim 12, wherein the methodcomprises sending the second trigger to the external device via awireless interface;
 14. The method according to claim 12, wherein themethod comprises obtaining the second trigger from a server.
 15. Themethod according to claim 12, wherein the first trigger includesvalidity data.
 16. The method according to claim 12, wherein the firsttrigger includes an identification of the first application.
 17. Themethod according to claim 12, wherein the first trigger includes anindication of a source of first application data, the source being abroadband source or a broadcast source.
 18. The method according toclaim 12, wherein the first trigger includes a first command thatidentifies a command to acquire, register, start, fire an event in,suspend, or terminate the first application.
 19. The method according toclaim 12, wherein the sending comprises: sending to said external devicea second command included in the second trigger to acquire, register, orstart the second application; or to fire an event in, suspend, orterminate the second application.
 20. The method according to claim 12,further comprising: receiving, by the circuitry, a digital broadcastsignal that includes audio/video content associated with the first andsecond applications; and outputting, by the circuitry, the audio/videocontent for display to a user.
 21. A non-transitory computer-readablestorage medium storing a program for causing a computer of a receptionapparatus to: receive a first trigger associated with a firstapplication to be executed by the reception apparatus; execute the firstapplication associated with the first trigger, a target of the firsttrigger being the reception apparatus; and send a second triggerassociated with a second application to an external device, a target ofthe second trigger being the external device.